package com.wesley.netty.classloader;

/**
 * DynamicLoad
 *
 * 主类在运行过程中如果使用到其它类，会逐步加载这些类。jar包或war包里的类不是一次性全部加载的，是使用到时才加载
 *
 * @author WangPanYong
 * @since 2021/06/03 11:42
 */
public class DynamicLoad {

    static {
        System.out.println("===========> load DynamicLoad <===========");
    }


    public static void main(String[] args) {
        new AClass();
        System.out.println("===========> load test <===========");
        // B不会加载，除非这里执行 new B()
        BClass b = null;
    }

}

class AClass {
    static {
        System.out.println("===========> load AClass <===========");
    }

    AClass() {
        System.out.println("===========> init AClass <===========");
    }
}

class BClass {
    static {
        System.out.println("===========> load BClass <===========");
    }

    BClass() {
        System.out.println("===========> init BClass <===========");
    }
}